[INFO] cloning repository https://github.com/h4x0r/ccchat
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/h4x0r/ccchat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fh4x0r%2Fccchat", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fh4x0r%2Fccchat'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 09dc785d47342eaccb6c6a2119d7d5c96ec39d2b
[INFO] testing h4x0r/ccchat against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fh4x0r%2Fccchat" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/h4x0r/ccchat
[INFO] finished tweaking git repo https://github.com/h4x0r/ccchat
[INFO] tweaked toml for git repo https://github.com/h4x0r/ccchat written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/h4x0r/ccchat on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/h4x0r/ccchat already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wiremock v0.5.22
[INFO] [stderr]   Downloaded syn v2.0.115
[INFO] [stderr]   Downloaded serde_qs v0.8.5
[INFO] [stderr]   Downloaded deadpool-runtime v0.1.4
[INFO] [stderr]   Downloaded http-types v2.12.0
[INFO] [stderr]   Downloaded infer v0.2.3
[INFO] [stderr]   Downloaded waker-fn v1.2.0
[INFO] [stderr]   Downloaded tokio-tungstenite v0.24.0
[INFO] [stderr]   Downloaded tungstenite v0.24.0
[INFO] [stderr]   Downloaded rustls v0.23.36
[INFO] [stderr]   Downloaded rusqlite v0.32.1
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.58
[INFO] [stderr]   Downloaded croner v3.0.1
[INFO] [stderr]   Downloaded chrono v0.4.43
[INFO] [stderr]   Downloaded clap v4.5.58
[INFO] [stderr]   Downloaded clap_builder v4.5.58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 76adad35007c6d420777c1def53f49f718ba2d6db2b11d9fff647e50d0d4a771
[INFO] running `Command { std: "docker" "start" "-a" "76adad35007c6d420777c1def53f49f718ba2d6db2b11d9fff647e50d0d4a771", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "76adad35007c6d420777c1def53f49f718ba2d6db2b11d9fff647e50d0d4a771", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "76adad35007c6d420777c1def53f49f718ba2d6db2b11d9fff647e50d0d4a771", kill_on_drop: false }`
[INFO] [stdout] 76adad35007c6d420777c1def53f49f718ba2d6db2b11d9fff647e50d0d4a771
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ae11be42c2bf390f593e4d462b4bcb8ed2f98ddffb5b9889a9cb56518d64f205
[INFO] running `Command { std: "docker" "start" "-a" "ae11be42c2bf390f593e4d462b4bcb8ed2f98ddffb5b9889a9cb56518d64f205", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling data-encoding v2.10.0
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling socket2 v0.6.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling clap_builder v4.5.58
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling clap v4.5.58
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling croner v3.0.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling ccchat v0.1.6 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.43s
[INFO] running `Command { std: "docker" "inspect" "ae11be42c2bf390f593e4d462b4bcb8ed2f98ddffb5b9889a9cb56518d64f205", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ae11be42c2bf390f593e4d462b4bcb8ed2f98ddffb5b9889a9cb56518d64f205", kill_on_drop: false }`
[INFO] [stdout] ae11be42c2bf390f593e4d462b4bcb8ed2f98ddffb5b9889a9cb56518d64f205
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1aba714498d6a360af6d01a040b447c4fcd81089f3ec419638a945523f118cd
[INFO] running `Command { std: "docker" "start" "-a" "d1aba714498d6a360af6d01a040b447c4fcd81089f3ec419638a945523f118cd", kill_on_drop: false }`
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling waker-fn v1.2.0
[INFO] [stderr]    Compiling http-types v2.12.0
[INFO] [stderr]    Compiling mockall_derive v0.13.1
[INFO] [stderr]    Compiling event-listener v2.5.3
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling futures-lite v1.13.0
[INFO] [stderr]    Compiling serde_qs v0.8.5
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling async-channel v1.9.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling retain_mut v0.1.9
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling infer v0.2.3
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling deadpool v0.9.5
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling downcast v0.11.0
[INFO] [stderr]    Compiling fragile v2.0.1
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling croner v3.0.1
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling mockall v0.13.1
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling ccchat v0.1.6 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling wiremock v0.5.22
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 51.99s
[INFO] running `Command { std: "docker" "inspect" "d1aba714498d6a360af6d01a040b447c4fcd81089f3ec419638a945523f118cd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1aba714498d6a360af6d01a040b447c4fcd81089f3ec419638a945523f118cd", kill_on_drop: false }`
[INFO] [stdout] d1aba714498d6a360af6d01a040b447c4fcd81089f3ec419638a945523f118cd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9f692b376fd4b153ccfc4d2ed619fb07891b09203e1e3ba8211831e55fe018e9
[INFO] running `Command { std: "docker" "start" "-a" "9f692b376fd4b153ccfc4d2ed619fb07891b09203e1e3ba8211831e55fe018e9", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.67s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ccchat-c02c65abebdb1102)
[INFO] [stdout] 
[INFO] [stdout] running 370 tests
[INFO] [stdout] test commands::tests::test_cmd_cron_invalid ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_missing_msg ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_cancel_not_found ... FAILED
[INFO] [stdout] test audit::tests::test_log_action_and_retrieve ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_success ... ok
[INFO] [stdout] test commands::tests::test_cmd_crons_empty ... ok
[INFO] [stdout] test commands::tests::test_cmd_cancel_reminder_not_found ... ok
[INFO] [stdout] test commands::tests::test_cmd_daily_invalid_time ... ok
[INFO] [stdout] test commands::tests::test_cmd_daily_missing_msg ... ok
[INFO] [stdout] test commands::tests::test_cmd_crons_with_jobs ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_counter_increments ... ok
[INFO] [stdout] test commands::tests::test_cmd_every_invalid ... ok
[INFO] [stdout] test commands::tests::test_cmd_every_missing_msg ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_pause_and_resume ... ok
[INFO] [stdout] test commands::tests::test_cmd_every_hourly ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_handles_summarize_failure ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_resets_counter ... ok
[INFO] [stdout] test commands::tests::test_cmd_remind_invalid_time ... ok
[INFO] [stdout] test commands::tests::test_cmd_remind_missing_message ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_triggers_at_threshold ... ok
[INFO] [stdout] test commands::tests::test_cmd_reminders_empty ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_saves_memory ... ok
[INFO] [stdout] test commands::tests::test_cmd_daily_valid ... ok
[INFO] [stdout] test commands::tests::test_cmd_remind_success ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_does_not_reset_session ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_cancel_success ... ok
[INFO] [stdout] test commands::tests::test_auto_summarize_does_not_trigger_below_threshold ... ok
[INFO] [stdout] test audit::tests::test_get_recent_actions_ordered ... ok
[INFO] [stdout] test commands::tests::test_cmd_cancel_reminder_success ... ok
[INFO] [stdout] test commands::tests::test_deliver_due_cron_jobs_skips_on_send_failure ... ok
[INFO] [stdout] test commands::tests::test_download_attachments_audio_sets_flag ... ok
[INFO] [stdout] test commands::tests::test_download_attachments_failure_sends_error ... ok
[INFO] [stdout] test commands::tests::test_download_attachments_image_success ... ok
[INFO] [stdout] test commands::tests::test_download_attachments_unsupported_sends_notification ... ok
[INFO] [stdout] test commands::tests::test_cmd_cron_unquoted ... ok
[INFO] [stdout] test commands::tests::test_deliver_due_cron_jobs_advances_after_delivery ... ok
[INFO] [stdout] test commands::tests::test_cmd_pins_lists_all ... ok
[INFO] [stdout] test commands::tests::test_allow_command_creates_audit_entry ... ok
[INFO] [stdout] test commands::tests::test_handle_claude_error_increments_error_count ... ok
[INFO] [stdout] test commands::tests::test_handle_claude_error_sends_user_message ... ok
[INFO] [stdout] test commands::tests::test_cmd_recall_sets_pending ... ok
[INFO] [stdout] test commands::tests::test_handle_command_allow_invalid ... ok
[INFO] [stdout] test commands::tests::test_handle_command_allow_no_arg ... ok
[INFO] [stdout] test commands::tests::test_cmd_recall_returns_content ... ok
[INFO] [stdout] test audit::tests::test_get_recent_actions_limit ... ok
[INFO] [stdout] test commands::tests::test_cmd_pin_saves_recent ... ok
[INFO] [stdout] test commands::tests::test_deliver_due_cron_jobs_sends_message ... ok
[INFO] [stdout] test commands::tests::test_handle_command_cron_cancel ... ok
[INFO] [stdout] test commands::tests::test_handle_command_cron_pause ... ok
[INFO] [stdout] test commands::tests::test_handle_command_cron_resume ... ok
[INFO] [stdout] test commands::tests::test_handle_command_cancel ... ok
[INFO] [stdout] test commands::tests::test_handle_command_crons ... ok
[INFO] [stdout] test commands::tests::test_cmd_usage_shows_model ... ok
[INFO] [stdout] test commands::tests::test_cmd_usage_with_cost ... ok
[INFO] [stdout] test commands::tests::test_handle_command_export_config ... ok
[INFO] [stdout] test commands::tests::test_handle_command_help ... ok
[INFO] [stdout] test commands::tests::test_handle_command_help_has_descriptions ... ok
[INFO] [stdout] test commands::tests::test_handle_command_help_includes_cron ... ok
[INFO] [stdout] test commands::tests::test_handle_command_help_lists_commands ... ok
[INFO] [stdout] test commands::tests::test_enqueue_on_claude_error ... ok
[INFO] [stdout] test commands::tests::test_handle_command_pending_empty ... ok
[INFO] [stdout] test commands::tests::test_handle_command_pending_with_entries ... ok
[INFO] [stdout] test commands::tests::test_cmd_usage_with_no_history ... ok
[INFO] [stdout] test commands::tests::test_cmd_usage_shows_first_message_date ... ok
[INFO] [stdout] test commands::tests::test_handle_command_reminders ... ok
[INFO] [stdout] test commands::tests::test_handle_command_allow_valid ... ok
[INFO] [stdout] test commands::tests::test_handle_command_status ... ok
[INFO] [stdout] test commands::tests::test_handle_command_unknown ... ok
[INFO] [stdout] test commands::tests::test_handle_command_usage ... ok
[INFO] [stdout] test commands::tests::test_delete_pin ... ok
[INFO] [stdout] test commands::tests::test_cmd_usage_with_messages ... ok
[INFO] [stdout] test commands::tests::test_handle_continuation_success ... ok
[INFO] [stdout] test commands::tests::test_handle_command_revoke ... ok
[INFO] [stdout] test commands::tests::test_handle_command_remind ... ok
[INFO] [stdout] test commands::tests::test_handle_message_command_response ... ok
[INFO] [stdout] test commands::tests::test_handle_continuation_still_truncated ... ok
[INFO] [stdout] test commands::tests::test_handle_command_model ... ok
[INFO] [stdout] test commands::tests::test_handle_claude_error_enqueues_retry_when_prompt_present ... ok
[INFO] [stdout] test commands::tests::test_handle_command_daily ... ok
[INFO] [stdout] test commands::tests::test_handle_message_more_with_truncated ... ok
[INFO] [stdout] test commands::tests::test_handle_message_more_without_truncated ... ok
[INFO] [stdout] test commands::tests::test_handle_message_error_increments_error_count ... ok
[INFO] [stdout] test commands::tests::test_handle_command_audit ... ok
[INFO] [stdout] test commands::tests::test_handle_message_rate_limited ... ok
[INFO] [stdout] test commands::tests::test_handle_continuation_claude_error ... ok
[INFO] [stdout] test commands::tests::test_handle_message_cost_tracking ... ok
[INFO] [stdout] test commands::tests::test_get_pin_missing ... ok
[INFO] [stdout] test commands::tests::test_handle_unauthorized_increments_counter ... ok
[INFO] [stdout] test commands::tests::test_handle_command_every ... ok
[INFO] [stdout] test commands::tests::test_handle_unauthorized_no_duplicate ... ok
[INFO] [stdout] test commands::tests::test_handle_unauthorized_tracks_pending ... ok
[INFO] [stdout] test commands::tests::test_handle_message_claude_error ... ok
[INFO] [stdout] test commands::tests::test_handle_message_new_session_injects_context ... ok
[INFO] [stdout] test commands::tests::test_handle_claude_error_skips_enqueue_when_prompt_empty ... ok
[INFO] [stdout] test commands::tests::test_get_recent_messages ... ok
[INFO] [stdout] test commands::tests::test_handle_command_export ... ok
[INFO] [stdout] test commands::tests::test_handle_command_cron ... ok
[INFO] [stdout] test commands::tests::test_handle_message_cost_accumulates_across_messages ... ok
[INFO] [stdout] test commands::tests::test_handle_message_records_latency ... ok
[INFO] [stdout] test commands::tests::test_search_no_argument ... ok
[INFO] [stdout] test commands::tests::test_handle_message_reset_with_summarization ... ok
[INFO] [stdout] test commands::tests::test_list_pins_empty ... ok
[INFO] [stdout] test commands::tests::test_handle_command_pin ... ok
[INFO] [stdout] test commands::tests::test_handle_message_attachments_forwarded_to_claude ... ok
[INFO] [stdout] test commands::tests::test_send_file_attachments_missing_file_does_not_panic ... ok
[INFO] [stdout] test commands::tests::test_send_file_attachments_multiple_files ... ok
[INFO] [stdout] test commands::tests::test_send_file_attachments_no_refs_sends_nothing ... ok
[INFO] [stdout] test commands::tests::test_send_file_attachments_send_failure_does_not_propagate ... ok
[INFO] [stdout] test commands::tests::test_send_file_attachments_sends_existing_file ... ok
[INFO] [stdout] test commands::tests::test_list_pins_with_data ... ok
[INFO] [stdout] test commands::tests::test_status_includes_avg_latency ... ok
[INFO] [stdout] test commands::tests::test_status_includes_error_count ... ok
[INFO] [stdout] test commands::tests::test_status_includes_sender_cost ... ok
[INFO] [stdout] test error::tests::test_display_claude_variant ... ok
[INFO] [stdout] test error::tests::test_display_signal_variant ... ok
[INFO] [stdout] test error::tests::test_from_io_error ... ok
[INFO] [stdout] test error::tests::test_from_serde_json_error ... ok
[INFO] [stdout] test error::tests::test_from_str ... ok
[INFO] [stdout] test error::tests::test_from_string ... ok
[INFO] [stdout] test error::tests::test_from_utf8_error ... ok
[INFO] [stdout] test commands::tests::test_send_claude_response_sends_attachments ... ok
[INFO] [stdout] test guard::tests::test_guard_decision_debug ... ok
[INFO] [stdout] test guard::tests::test_guard_lakera_timeout_is_fail_open ... ok
[INFO] [stdout] test guard::tests::test_guard_blocks_on_lakera_flagged ... ok
[INFO] [stdout] test guard::tests::test_judge_no_api_key_fails_closed ... ok
[INFO] [stdout] test guard::tests::test_rejection_message_is_vague ... ok
[INFO] [stdout] test helpers::tests::test_content_type_from_extension_png ... ok
[INFO] [stdout] test helpers::tests::test_content_type_from_extension_unknown ... ok
[INFO] [stdout] test helpers::tests::test_extract_file_references_ignores_nonexistent ... ok
[INFO] [stdout] test guard::tests::test_lakera_clean_passes ... ok
[INFO] [stdout] test helpers::tests::test_extract_file_references_none ... ok
[INFO] [stdout] test helpers::tests::test_extract_file_references_single_file ... ok
[INFO] [stdout] test helpers::tests::test_extract_file_references_multiple ... ok
[INFO] [stdout] test helpers::tests::test_find_free_port_preferred ... ok
[INFO] [stdout] test helpers::tests::test_find_free_port_returns_valid ... ok
[INFO] [stdout] test helpers::tests::test_format_cron_human_invalid_falls_back ... ok
[INFO] [stdout] test helpers::tests::test_format_cron_human_valid ... ok
[INFO] [stdout] test helpers::tests::test_hash_message_deterministic ... ok
[INFO] [stdout] test helpers::tests::test_hash_message_different_inputs ... ok
[INFO] [stdout] test helpers::tests::test_is_command ... ok
[INFO] [stdout] test helpers::tests::test_isolated_workdir_unique_per_sender ... ok
[INFO] [stdout] test helpers::tests::test_looks_truncated_ends_with_backtick ... ok
[INFO] [stdout] test helpers::tests::test_looks_truncated_ends_with_period ... ok
[INFO] [stdout] test helpers::tests::test_looks_truncated_ends_with_question ... ok
[INFO] [stdout] test helpers::tests::test_looks_truncated_ends_without_punctuation ... ok
[INFO] [stdout] test helpers::tests::test_looks_truncated_short ... ok
[INFO] [stdout] test helpers::tests::test_merge_messages_multiple ... ok
[INFO] [stdout] test helpers::tests::test_merge_messages_single ... ok
[INFO] [stdout] test helpers::tests::test_parse_daily_time_afternoon ... ok
[INFO] [stdout] test helpers::tests::test_parse_daily_time_invalid_format ... ok
[INFO] [stdout] test helpers::tests::test_parse_daily_time_invalid_hour ... ok
[INFO] [stdout] test helpers::tests::test_parse_daily_time_valid ... ok
[INFO] [stdout] test helpers::tests::test_parse_duration_days ... ok
[INFO] [stdout] test helpers::tests::test_parse_duration_hours ... ok
[INFO] [stdout] test helpers::tests::test_parse_duration_invalid ... ok
[INFO] [stdout] test helpers::tests::test_parse_duration_minutes ... ok
[INFO] [stdout] test helpers::tests::test_parse_duration_seconds ... ok
[INFO] [stdout] test helpers::tests::test_parse_interval_secs_daily ... ok
[INFO] [stdout] test helpers::tests::test_parse_interval_secs_invalid ... ok
[INFO] [stdout] test helpers::tests::test_parse_interval_secs_minutes ... ok
[INFO] [stdout] test helpers::tests::test_parse_rate_limit ... ok
[INFO] [stdout] test helpers::tests::test_split_message_at_double_newline ... ok
[INFO] [stdout] test helpers::tests::test_split_message_at_newline ... ok
[INFO] [stdout] test helpers::tests::test_split_message_exact_max ... ok
[INFO] [stdout] test helpers::tests::test_split_message_hard_split ... ok
[INFO] [stdout] test helpers::tests::test_split_message_short ... ok
[INFO] [stdout] test helpers::tests::test_truncate_exact ... ok
[INFO] [stdout] test helpers::tests::test_truncate_long ... ok
[INFO] [stdout] test helpers::tests::test_truncate_short ... ok
[INFO] [stdout] test helpers::tests::test_parse_interval_secs_hourly ... ok
[INFO] [stdout] test helpers::tests::test_voice_prompt_with_text ... ok
[INFO] [stdout] test helpers::tests::test_voice_prompt_without_text ... ok
[INFO] [stdout] test commands::tests::test_model_command_persists_preference ... ok
[INFO] [stdout] test commands::tests::test_handle_message_truncated_response ... ok
[INFO] [stdout] test commands::tests::test_retry_loop_skips_max_retries ... ok
[INFO] [stdout] test memory::config::tests::test_allowed_file_path_json ... ok
[INFO] [stdout] test memory::config::tests::test_config_dir_under_home ... ok
[INFO] [stdout] test memory::config::tests::test_export_config_empty ... ok
[INFO] [stdout] test memory::config::tests::test_export_config_excludes_account_owner ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_invalid_format ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_invalid_yaml ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_json_empty ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_json_valid ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_merges_with_persisted ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_missing_file ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_missing_name_field ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_unknown_extension_json_fallback ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_with_system_prompt ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_without_system_prompt_defaults_none ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_yaml_empty ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_yaml_valid ... ok
[INFO] [stdout] test memory::config::tests::test_load_config_yml_extension ... ok
[INFO] [stdout] test memory::config::tests::test_persisted_allowed_serde_round_trip ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_adds_new_entries ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_clears_old_sender_prompts ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_file_error_preserves_state ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_no_config_path_noop ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_preserves_account_owner ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_removes_gone_entries ... ok
[INFO] [stdout] test memory::config::tests::test_reload_config_updates_system_prompt ... ok
[INFO] [stdout] test memory::config::tests::test_validate_entries_duplicates ... ok
[INFO] [stdout] test memory::config::tests::test_validate_entries_empty_id ... ok
[INFO] [stdout] test memory::config::tests::test_validate_entries_suspicious_format ... ok
[INFO] [stdout] test memory::config::tests::test_validate_entries_uuid_ok ... ok
[INFO] [stdout] test memory::config::tests::test_validate_entries_valid_e164 ... ok
[INFO] [stdout] test commands::tests::test_save_pin_overwrites_existing ... ok
[INFO] [stdout] test commands::tests::test_save_pin_and_get ... ok
[INFO] [stdout] test memory::context::tests::test_format_epoch ... ok
[INFO] [stdout] test commands::tests::test_handle_message_happy_path ... ok
[INFO] [stdout] test commands::tests::test_search_empty_memory ... ok
[INFO] [stdout] test commands::tests::test_handle_message_new_session_injects_context_format ... ok
[INFO] [stdout] test commands::tests::test_search_no_results ... ok
[INFO] [stdout] test commands::tests::test_retry_loop_processes_pending ... ok
[INFO] [stdout] test commands::tests::test_search_with_results ... ok
[INFO] [stdout] test commands::tests::test_sender_state_message_count_initializes_zero ... ok
[INFO] [stdout] test memory::admin::tests::test_forget_command_no_data ... ok
[INFO] [stdout] test memory::admin::tests::test_memory_command_no_data ... ok
[INFO] [stdout] test commands::tests::test_search_results_truncated ... ok
[INFO] [stdout] test memory::context::tests::test_inject_context_no_memory ... ok
[INFO] [stdout] test memory::context::tests::test_forget_clears_memory ... ok
[INFO] [stdout] test memory::admin::tests::test_forget_command_with_counts ... ok
[INFO] [stdout] test memory::context::tests::test_inject_context_with_memory ... ok
[INFO] [stdout] test memory::context::tests::test_delete_all_memory ... ok
[INFO] [stdout] test memory::messages::tests::test_export_messages_empty ... ok
[INFO] [stdout] test memory::context::tests::test_save_memory_uses_sqlite ... ok
[INFO] [stdout] test memory::admin::tests::test_memory_command_with_data ... ok
[INFO] [stdout] test memory::context::tests::test_inject_context_with_relevant_messages ... ok
[INFO] [stdout] test memory::context::tests::test_store_message_pair ... ok
[INFO] [stdout] test memory::schema::tests::test_hash_sender_deterministic ... ok
[INFO] [stdout] test memory::messages::tests::test_export_messages_with_data ... ok
[INFO] [stdout] test memory::messages::tests::test_get_oldest_message_ts_empty ... ok
[INFO] [stdout] test memory::schema::tests::test_memory_db_path_valid ... ok
[INFO] [stdout] test memory::messages::tests::test_get_summary_count_empty ... ok
[INFO] [stdout] test queue::tests::test_enqueue_message ... ok
[INFO] [stdout] test queue::tests::test_enqueue_with_attachments_json ... ok
[INFO] [stdout] test queue::tests::test_get_pending_ordered_by_timestamp ... ok
[INFO] [stdout] test queue::tests::test_increment_retry_count ... ok
[INFO] [stdout] test queue::tests::test_mark_completed ... ok
[INFO] [stdout] test queue::tests::test_max_retries_excludes_from_pending ... ok
[INFO] [stdout] test queue::tests::test_purge_completed_messages ... ok
[INFO] [stdout] test schedule::tests::test_add_cron_job_and_get_active ... ok
[INFO] [stdout] test schedule::tests::test_add_cron_job_invalid_pattern_returns_zero ... ok
[INFO] [stdout] test schedule::tests::test_add_interval_job_and_get_active ... ok
[INFO] [stdout] test schedule::tests::test_add_reminder_and_get_pending ... ok
[INFO] [stdout] test schedule::tests::test_advance_cron_job_updates_next_delivery ... ok
[INFO] [stdout] test schedule::tests::test_advance_interval_job_updates_next_delivery ... ok
[INFO] [stdout] test schedule::tests::test_cancel_cron_job_removes ... ok
[INFO] [stdout] test schedule::tests::test_cancel_cron_job_wrong_sender ... ok
[INFO] [stdout] test schedule::tests::test_cancel_reminder_removes ... ok
[INFO] [stdout] test schedule::tests::test_cancel_reminder_wrong_sender ... ok
[INFO] [stdout] test schedule::tests::test_get_active_cron_jobs_for_sender ... ok
[INFO] [stdout] test schedule::tests::test_get_due_cron_jobs_excludes_cancelled ... ok
[INFO] [stdout] test schedule::tests::test_get_due_cron_jobs_excludes_paused ... ok
[INFO] [stdout] test schedule::tests::test_get_due_cron_jobs_only_active_and_past ... ok
[INFO] [stdout] test schedule::tests::test_get_due_reminders_excludes_delivered ... ok
[INFO] [stdout] test schedule::tests::test_get_due_reminders_only_past ... ok
[INFO] [stdout] test schedule::tests::test_get_pending_reminders_for_sender ... ok
[INFO] [stdout] test schedule::tests::test_mark_delivered ... ok
[INFO] [stdout] test schedule::tests::test_pause_cron_job ... ok
[INFO] [stdout] test schedule::tests::test_purge_delivered_cleans_up ... ok
[INFO] [stdout] test schedule::tests::test_resume_cron_job_recomputes_next ... ok
[INFO] [stdout] test signal::tests::test_classify_attachment_audio ... ok
[INFO] [stdout] test signal::tests::test_classify_attachment_document ... ok
[INFO] [stdout] test signal::tests::test_classify_attachment_image ... ok
[INFO] [stdout] test signal::tests::test_classify_attachment_other ... ok
[INFO] [stdout] test signal::tests::test_extract_attachments_from_envelope ... ok
[INFO] [stdout] test signal::tests::test_extract_attachments_none ... ok
[INFO] [stdout] test signal::tests::test_extract_attachments_sync_message ... ok
[INFO] [stdout] test signal::tests::test_extract_voice_note_flag ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_attachment_only ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_data_message ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_empty_text_no_attachments ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_no_source ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_no_text_no_attachments ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_sync_message ... ok
[INFO] [stdout] test signal::tests::test_parse_envelope_with_attachments ... ok
[INFO] [stdout] test signal::tests::test_supported_audio_formats ... ok
[INFO] [stdout] test state::tests::test_add_cost_and_total_cost_usd ... ok
[INFO] [stdout] test state::tests::test_add_cost_fractional ... ok
[INFO] [stdout] test memory::messages::tests::test_fts5_search ... ok
[INFO] [stdout] test commands::tests::test_retry_loop_increments_on_failure ... ok
[INFO] [stdout] test memory::messages::tests::test_get_oldest_message_ts_with_data ... ok
[INFO] [stdout] test state::tests::test_get_system_prompt_custom_global ... ok
[INFO] [stdout] test state::tests::test_get_system_prompt_default ... ok
[INFO] [stdout] test state::tests::test_get_system_prompt_per_sender_override ... ok
[INFO] [stdout] test state::tests::test_metrics_error_count_increment ... ok
[INFO] [stdout] test state::tests::test_metrics_error_count_initial_zero ... ok
[INFO] [stdout] test state::tests::test_per_sender_cost_tracking ... ok
[INFO] [stdout] test state::tests::test_rate_limit_blocks ... ok
[INFO] [stdout] test state::tests::test_session_expiry_logic ... ok
[INFO] [stdout] test memory::messages::tests::test_load_model_preference_none_when_absent ... ok
[INFO] [stdout] test state::tests::test_shutdown_save_sessions_empty_is_noop ... ok
[INFO] [stdout] test state::tests::test_shutdown_save_sessions_handles_summarize_failure ... ok
[INFO] [stdout] test state::tests::test_state_is_allowed_empty ... ok
[INFO] [stdout] test state::tests::test_state_is_allowed_false ... ok
[INFO] [stdout] test state::tests::test_state_is_allowed_true ... ok
[INFO] [stdout] test memory::messages::tests::test_get_summary_count_with_data ... ok
[INFO] [stdout] test state::tests::test_token_bucket_basic ... ok
[INFO] [stdout] test state::tests::test_token_bucket_refill ... ok
[INFO] [stdout] test stats::tests::test_build_health_json_has_status_ok ... ok
[INFO] [stdout] test stats::tests::test_build_health_json_has_uptime ... ok
[INFO] [stdout] test stats::tests::test_build_health_json_has_version ... ok
[INFO] [stdout] test stats::tests::test_build_stats_json_initially_zero ... ok
[INFO] [stdout] test stats::tests::test_health_endpoint_responds ... ok
[INFO] [stdout] test stats::tests::test_metrics_endpoint_responds ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_cost ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_errors ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_messages ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_sessions ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_type_annotations ... ok
[INFO] [stdout] test stats::tests::test_prometheus_metrics_has_uptime ... ok
[INFO] [stdout] test stats::tests::test_stats_includes_all_fields ... ok
[INFO] [stdout] test stats::tests::test_stats_includes_error_count ... ok
[INFO] [stdout] test stats::tests::test_stats_includes_per_sender_costs ... ok
[INFO] [stdout] test stats::tests::test_stats_json_format ... ok
[INFO] [stdout] test stats::tests::test_stats_reflects_state_mutations ... ok
[INFO] [stdout] test stats::tests::test_stats_server_responds_with_json ... ok
[INFO] [stdout] test tests::test_args_account_required ... ok
[INFO] [stdout] test tests::test_args_config_defaults_to_none ... ok
[INFO] [stdout] test tests::test_args_config_flag ... ok
[INFO] [stdout] test tests::test_args_default_values ... ok
[INFO] [stdout] test tests::test_log_format_arbitrary_value_accepted ... ok
[INFO] [stdout] test tests::test_log_format_defaults_to_text ... ok
[INFO] [stdout] test tests::test_log_format_json_accepted ... ok
[INFO] [stdout] test tests::test_log_format_text_explicit ... ok
[INFO] [stdout] test tests::test_no_memory_prompt_content ... ok
[INFO] [stdout] test tests::test_route_allowed_by_uuid ... ok
[INFO] [stdout] test tests::test_route_allowed_sender_direct ... ok
[INFO] [stdout] test tests::test_route_attachment_always_direct_even_with_debounce ... ok
[INFO] [stdout] test tests::test_route_command_always_direct_even_with_debounce ... ok
[INFO] [stdout] test tests::test_route_debounce_when_enabled ... ok
[INFO] [stdout] test tests::test_route_echo_suppressed ... ok
[INFO] [stdout] test tests::test_route_sync_bypasses_auth_check ... ok
[INFO] [stdout] test tests::test_route_sync_message_reply_to_account ... ok
[INFO] [stdout] test tests::test_route_unauthorized_sender ... ok
[INFO] [stdout] test traits::tests::test_claude_variant_message_preserved ... ok
[INFO] [stdout] test traits::tests::test_signal_api_download_attachment_failure ... ok
[INFO] [stdout] test traits::tests::test_signal_api_download_attachment_success ... ok
[INFO] [stdout] test traits::tests::test_signal_api_send_attachment_failure ... ok
[INFO] [stdout] test traits::tests::test_signal_api_send_attachment_success ... ok
[INFO] [stdout] test traits::tests::test_signal_api_send_failure ... ok
[INFO] [stdout] test traits::tests::test_signal_api_send_multiple_messages_via_http ... ok
[INFO] [stdout] test traits::tests::test_signal_api_send_success ... ok
[INFO] [stdout] test traits::tests::test_signal_api_set_typing_off ... ok
[INFO] [stdout] test traits::tests::test_signal_api_set_typing_on ... ok
[INFO] [stdout] test traits::tests::test_signal_send_failure_returns_signal_variant ... ok
[INFO] [stdout] test traits::tests::test_signal_variant_message_preserved ... ok
[INFO] [stdout] test webhook::tests::test_fire_if_configured_none_is_noop ... ok
[INFO] [stdout] test memory::messages::tests::test_persist_model_preference_round_trip ... ok
[INFO] [stdout] test webhook::tests::test_fire_webhook_builds_payload ... ok
[INFO] [stdout] test webhook::tests::test_fire_webhook_includes_event ... ok
[INFO] [stdout] test webhook::tests::test_fire_webhook_includes_timestamp ... ok
[INFO] [stdout] test webhook::tests::test_webhook_does_not_block ... ok
[INFO] [stdout] test webhook::tests::test_webhook_payload_has_detail ... ok
[INFO] [stdout] test webhook::tests::test_webhook_payload_has_sender ... ok
[INFO] [stdout] test webhook::tests::test_fire_if_configured_some_fires ... ok
[INFO] [stdout] test state::tests::test_state_send_long_message_splits ... ok
[INFO] [stdout] test memory::messages::tests::test_purge_old_messages ... ok
[INFO] [stdout] test memory::messages::tests::test_store_summaries ... ok
[INFO] [stdout] test memory::messages::tests::test_store_and_retrieve_messages ... ok
[INFO] [stdout] test memory::messages::tests::test_persist_model_preference_updates_existing ... ok
[INFO] [stdout] test memory::schema::tests::test_json_migration_old_format_removed ... ok
[INFO] [stdout] test memory::schema::tests::test_json_migration_to_sqlite ... ok
[INFO] [stdout] test memory::schema::tests::test_open_memory_db_creates_schema ... ok
[INFO] [stdout] test state::tests::test_get_or_create_session_new ... ok
[INFO] [stdout] test state::tests::test_get_or_create_session_existing_returns_same ... ok
[INFO] [stdout] test memory::messages::tests::test_summaries_max_5 ... ok
[INFO] [stdout] test state::tests::test_get_or_create_session_uses_persisted_model ... ok
[INFO] [stdout] test state::tests::test_shutdown_save_sessions_calls_summarize_for_each ... ok
[INFO] [stdout] test memory::messages::tests::test_export_messages_limit_100 ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- commands::tests::test_cmd_cron_cancel_not_found stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'commands::tests::test_cmd_cron_cancel_not_found' (31) panicked at src/commands/tests.rs:1654:5:
[INFO] [stdout] should say not found: Failed to access schedule database.
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x63bf267872b8 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x63bf267872b8 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x63bf267872b8 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x63bf267872b8 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x63bf267a045a - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x63bf267a045a - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x63bf2678caf2 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x63bf2678caf2 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x63bf26762446 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x63bf26762446 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x63bf2677deb9 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x63bf25d7eecc - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x63bf25d7eecc - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x63bf2677e132 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x63bf2677e132 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x63bf26762502 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x63bf26756d69 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x63bf2676368d - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x63bf267a0c4c - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x63bf25b35a15 - ccchat[80700d048630d92e]::commands::tests::test_cmd_cron_cancel_not_found
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands/tests.rs:1654:5
[INFO] [stdout]   20:     0x63bf25b13ca7 - ccchat[80700d048630d92e]::commands::tests::test_cmd_cron_cancel_not_found::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands/tests.rs:1651:36
[INFO] [stdout]   21:     0x63bf25b63226 - <ccchat[80700d048630d92e]::commands::tests::test_cmd_cron_cancel_not_found::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x63bf25d71fab - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x63bf25d71fab - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x63bf25d7f825 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x63bf25d7f825 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x63bf25d7f825 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x63bf25d7f825 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x63bf25d7f825 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x63bf25d7f825 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x63bf25d7f825 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x63bf25d7a384 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x63bf25d7a384 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x63bf25d828a2 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x63bf25d828a2 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x63bf25d828a2 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x63bf25d828a2 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x63bf25d828a2 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x63bf25d828a2 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x63bf25d828a2 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x63bf267860af - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   41:     0x63bf267860af - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7cffe3ec8aa4 - <unknown>
[INFO] [stdout]   43:     0x7cffe3f55a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     commands::tests::test_cmd_cron_cancel_not_found
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 369 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 30.65s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin ccchat`
[INFO] running `Command { std: "docker" "inspect" "9f692b376fd4b153ccfc4d2ed619fb07891b09203e1e3ba8211831e55fe018e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f692b376fd4b153ccfc4d2ed619fb07891b09203e1e3ba8211831e55fe018e9", kill_on_drop: false }`
[INFO] [stdout] 9f692b376fd4b153ccfc4d2ed619fb07891b09203e1e3ba8211831e55fe018e9
